<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <link rel="stylesheet" href="css/reset.css" />
    <link rel="stylesheet" href="css/main.css" />
    <script type="text/javascript" src="js/jquery-1.12.4.min.js"></script>
    <script type="text/javascript" src="js/jquery-ui.min.js"></script>
    <script type="text/javascript" src="js/jquery.mousewheel.js"></script>
    <title>聊天机器人</title>
  </head>

  <body>
    <div class="wrap">
      <audio id="myAudio" src="" autoplay></audio>
      <!-- 头部 Header 区域 -->
      <div class="header">
        <h3>小思同学</h3>
        <img src="img/person01.png" alt="icon" />
      </div>
      <!-- 中间 聊天内容区域 -->
      <div class="main">
        <ul class="talk_list" style="top: 0px">
          <!-- <li class="left_word">
            <img src="img/person01.png" /> <span>你好</span>
          </li>
          <li class="right_word">
            <img src="img/person02.png" /> <span>你好哦</span>
          </li> -->
        </ul>
        <div class="drag_bar" style="display: none">
          <div
            class="drager ui-draggable ui-draggable-handle"
            style="display: none; height: 412.628px"
          ></div>
        </div>
      </div>
      <!-- 底部 消息编辑区域 -->
      <div class="footer">
        <img src="img/person02.png" alt="icon" />
        <!-- event实际是实参 -->
        <input
          onkeyup="keyupInput(event)"
          type="text"
          placeholder="说的什么吧..."
          class="input_txt"
        />
        <input
          type="button"
          value="发 送"
          class="input_sub"
          onclick="sendMessage()"
        />
      </div>
    </div>
    <script type="text/javascript" src="js/scroll.js"></script>
    <script>
      $(function () {
        // 初始化右侧滚动条
        // 这个方法定义在scroll.js中
        resetui()
      })
      const baseURL = "http://www.liulongbin.top:3006"
      // 发送消息
      function sendMessage() {
        // 要获取发送的文本
        const spoken = $(".input_txt").val().trim()
        // !!转成布尔值
        if (!!spoken) {
          // 调用接口
          $(".talk_list").append(`<li class="right_word">
            <img src="img/person02.png" /> <span>${spoken}</span>
          </li>`)
          resetui() // 将滚动条滚动到最下方

          // 将我们的发送的内容先追加到聊天区
          $(".input_txt").val("")
          // 清空评论区
          $.get(
            `${baseURL}/api/robot`,
            { spoken },
            ({
              data: {
                info: { text },
              },
            }) => {
              // 调用获取语音的接口
              getAudioUrl(text)
              $(".talk_list").append(`<li class="left_word">
            <img src="img/person01.png" /> <span>${text}</span>
          </li>`)
              resetui()
            }
          )
        }
      }
      function getAudioUrl(text) {
        $.get(`${baseURL}/api/synthesize`, { text }, ({ voiceUrl }) => {
          $("#myAudio").attr("src", voiceUrl) // 给播放语音的标签赋值
        })
      }
      function keyupInput(event) {
        // if ()
        event.keyCode === 13 && sendMessage()
      }
    </script>
  </body>
</html>
